﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Runtime.Serialization;
using System.ComponentModel.DataAnnotations;
using ESOL.Common.Entity;

namespace ESOL.Common.Entity
{
    [DataContract]
    public class UiBptApp
    {
        [DataMember]
        public string AppOrderNo { set; get; }
        [DataMember]
        public string SAppOrderNo { set; get; }
        [DataMember]
        public string SAppId { set; get; }
        [DataMember]
        public string AppPerson { set; get; }
        [DataMember]
        public string AppPersonId { set; get; }
        [DataMember]
        public string AppType { set; get; }
        [DataMember]
        public string Remark { set; get; }
        [DataMember]
        public string Status { set; get; }

    }

    [DataContract]
    public class BptQueryCondition
    {
        [DataMember]
        public int txtPageIndex { set; get; }
        [DataMember]
        public int txtPageSize { set; get; }
        [DataMember]
        public string txtBptAppNo { set; get; }
        [DataMember]
        public string txtSalesAppNo { set; get; }
        [DataMember]
        public string txtCreaatedUser { set; get; }
        [DataMember]
        public DateTime txtRequiredDateFrom { set; get; }
        [DataMember]
        public DateTime txtRequiredDateTo { set; get; }
        [DataMember]
        public string cmbType { set; get; }
        [DataMember]
        public string cmbStatus { set; get; }
    }

    [DataContract]
    public class BptMaintainApp
    {
        [DataMember]
        public string Id { set; get; }
        [DataMember]
        public string CreatedUser { set; get; }
        [DataMember]
        public string CreatedBy { set; get; }
        [DataMember]
        public DateTime CreatedDate { set; get; }
        [DataMember]
        public string UpdatedUser { set; get; }
        [DataMember]
        public string UpdatedBy { set; get; }
        [DataMember]
        public DateTime UpdatedDate { set; get; }
        [DataMember]
        public string SAppOrderNo { set; get; }
        [DataMember]
        public string SAppId { set; get; }
        [DataMember]
        public string SAppItemId { set; get; }
        [DataMember]
        public string AppType { set; get; }
        [DataMember]
        public string AppCode { set; get; }
        [DataMember]
        public DateTime RequiredDate { set; get; }
        [DataMember]
        public string AssignUser { set; get; }
        [DataMember]
        public string AssignBy { set; get; }
        [DataMember]
        public string Description { set; get; }
        [DataMember]
        public string Remark { set; get; }
        [DataMember]
        public DateTime FinshedDate { set; get; }
        [DataMember]
        public string Material { set; get; }
        [DataMember]
        public string ContractModel { set; get; }
        [DataMember]
        public string Status { set; get; }
    }

    [DataContract]
    public class BptMaintainTask
    {
        [DataMember]
        public string Id { set; get; }
        [DataMember]
        public string CreatedUser { set; get; }
        [DataMember]
        public string CreatedBy { set; get; }
        [DataMember]
        public DateTime CreatedDate { set; get; }
        [DataMember]
        public string UpdatedUser { set; get; }
        [DataMember]
        public string UpdatedBy { set; get; }
        [DataMember]
        public string BAppId { set; get; }
        [DataMember]
        public string BAppCode { set; get; }
        [DataMember]
        public string CustomerName { set; get; }
        [DataMember]
        public string SAppId { set; get; }
        [DataMember]
        public string SAppCode { set; get; }
        [DataMember]
        public string TaskCode { set; get; }
        [DataMember]
        public string AssignUser { set; get; }
        [DataMember]
        public string AssignBy { set; get; }
        [DataMember]
        public string BlueprintId { set; get; }
        [DataMember]
        public string ProductId { set; get; }
        [DataMember]
        public string ProductName { set; get; }
        [DataMember]
        public decimal WorkingTime { set; get; }
        [DataMember]
        public DateTime RequiredDate { set; get; }
        [DataMember]
        public DateTime UploadDate { set; get; }
        [DataMember]
        public DateTime FinishedDate { set; get; }
        [DataMember]
        public string Remark { set; get; }
        [DataMember]
        public string Status { set; get; }
    }

    [DataContract]
    public class BomMaintainTechnic
    {
        [DataMember]
        public string Id { set; get; }
        [DataMember]
        public string CreatedBy { set; get; }
        [DataMember]
        public string CreatedUser { set; get; }
        [DataMember]
        public DateTime CreatedDate { set; get; }
        [DataMember]
        public string UpdatedBy { set; get; }
        [DataMember]
        public string UpdatedUser { set; get; }
        [DataMember]
        public DateTime UpdatedDate { set; get; }
        [DataMember]
        public int IsActive { set; get; }
        [DataMember]
        public string ProductId { set; get; }
        [DataMember]
        public string ProductName { set; get; }
        [DataMember]
        public string ProductCode { set; get; }
        [DataMember]
        public string Ver { set; get; }
        [DataMember]
        public string Description { set; get; }
        [DataMember]
        public string Status { set; get; }
        [DataMember]
        public string ParentId { set; get; }
        [DataMember]
        public string LogicNo { set; get; }
        [DataMember]
        public string Name { set; get; }
    }

    [DataContract]
    public class BomMaintainTechnicItem
    {
        [DataMember]
        public string Id { set; get; }
        [DataMember]
        public string BomTechnicId { set; get; }
        [DataMember]
        public string TechnicId { set; get; }
        [DataMember]
        public string TechnicName { set; get; }
        [DataMember]
        public int Sequence { set; get; }
        [DataMember]
        public string Description { set; get; }
        [DataMember]
        public string TechnicCode { set; get; }
        [DataMember]
        public decimal ReadyTime { set; get; }
        [DataMember]
        public decimal RateTime { set; get; }
        [DataMember]
        public decimal CloseTime { set; get; }
        [DataMember]
        public string StationType { set; get; }
        [DataMember]
        public string EqptType { set; get; }

        [DataMember]
        public int BaseQty { set; get; }
    }

    [DataContract]
    public class BomQueryCondition
    {
        [DataMember]
        public int txtPageIndex { set; get; }
        [DataMember]
        public int txtPageSize { set; get; }
        [DataMember]
        public int IsActive { set; get; }
        [DataMember]
        public string Name { set; get; }
        [DataMember]
        public string ProductId { set; get; }
        [DataMember]
        public string ProductName { set; get; }
        [DataMember]
        public string ProductCode { set; get; }
        [DataMember]
        public string Ver { set; get; }
        [DataMember]
        public string Status { set; get; }
    }

    [DataContract]
    public class BomMaintainMaster
    {
        [DataMember]
        public string Id { set; get; }
        [DataMember]
        public string CreatedBy { set; get; }
        [DataMember]
        public string CreatedUser { set; get; }
        [DataMember]
        public DateTime CreatedDate { set; get; }
        [DataMember]
        public string UpdatedBy { set; get; }
        [DataMember]
        public string UpdatedUser { set; get; }
        [DataMember]
        public DateTime UpdatedDate { set; get; }
        [DataMember]
        public int IsActive { set; get; }
        [DataMember]
        public string BlueprintId { set; get; }
        [DataMember]
        public string ProductId { set; get; }
        [DataMember]
        public string ProductName { set; get; }
        [DataMember]
        public string ProductCode { set; get; }
        [DataMember]
        public string Name { set; get; }
        [DataMember]
        public string Description { set; get; }
        [DataMember]
        public string Ver { set; get; }
        [DataMember]
        public string Status { set; get; }
    }

    [DataContract]
    public class TechnicQueryCondition
    {
        [DataMember]
        public int txtPageIndex { set; get; }
        [DataMember]
        public int txtPageSize { set; get; }
        [DataMember]
        public int IsActive { set; get; }
        [DataMember]
        public string ProductId { set; get; }
        [DataMember]
        public string ProductName { set; get; }
        [DataMember]
        public string Ver { set; get; }
        [DataMember]
        public string Status { set; get; }
        [DataMember]
        public string Name { set; get; }
    }
}
